home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / ddj0897.zip / DYN401.ZIP / dpp / b32.dm < prev    next >
Text File  |  1997-04-15  |  2KB  |  102 lines

  1.  
  2. #  Makefile designed for use by the DMAKE.EXE utility and
  3. #  Borland C 32 bit
  4.  
  5.  
  6.  
  7. .IMPORT .IGNORE : BORLAND_HOME
  8.  
  9.  
  10. BINDIR = ..\bin
  11. LIBDIR = ..\lib
  12. INCDIR = ..\include
  13.  
  14.  
  15.  
  16. CC = bcc32
  17. WARNINGS = -w-par -w-pia -w-pro -w-stu
  18. .IF $(DEBUG)
  19. OPT = -Od -v
  20. LFLAGS = /c /x /v
  21. .ELSE
  22. OPT  = -O -Z -OtglbWimpv -k- # -Oe doesn't work
  23. LFLAGS = /c /x
  24. .END
  25. COPT = -a4 -d
  26. GOPT  = -O -Z -Ot -k-
  27. CFLAGS = $(COPT) $(OPT) $(WARNINGS) -N
  28. GFLAGS = $(COPT) $(GOPT) $(WARNINGS) -w-rvl
  29.  
  30. INC  = -I$(INCDIR) -I$(BORLAND_HOME)\include
  31.  
  32. LIBS = $(LIBDIR)\dynlcb.lib
  33.  
  34. BLIBS = $(BORLAND_HOME)\lib\{cw32 import32}.lib
  35.  
  36.  
  37. BSTARTUP = $(BORLAND_HOME)\lib\c0x32.obj $(BORLAND_HOME)\lib\32bit\wildargs.obj
  38.  
  39.  
  40. TARGET = dpp.exe
  41.  
  42. CLASSES = proto.d istream.d ostream.d token.d arglist.d
  43.  
  44. CFILES = dpp.c 
  45.  
  46. OBJS = {$(CFILES:b)}.obj {$(CLASSES:b)}.obj
  47.  
  48.  
  49. .d.c .PRECIOUS :
  50.     $(BINDIR)\dpp $(STRAT) -C -g -p $<
  51.  
  52.  
  53. # Since DMAKE diversions treat the backslach like an escape sequence it is
  54. # necessary to double up the backslashes located in paths
  55. BSTARTUP2 := $(BSTARTUP:s/\/\\/)
  56. BLIBS2    := $(BLIBS:s/\/\\/)
  57. LIBS2     := $(LIBS:s/\/\\/)
  58. OBJS2     := $(OBJS:s/\/\\/)
  59.  
  60.  
  61. .c.obj:
  62.     @echo $(CFLAGS) >bcc32.cfg
  63.     @echo $(INC) >>bcc32.cfg
  64.     $(CC) -c $<
  65.     @$(BINDIR)\rm -zq bcc32.cfg
  66.  
  67.  
  68. $(TARGET) : generics.1 generics.h generics.obj $(OBJS) $(LIBS)
  69.     tlink32 @$(mktmp,lnk.rsp  \
  70.         $(LFLAGS) $(BSTARTUP2) +  \n\
  71.         $(OBJS2) generics.obj\n\
  72.         $@ \n\
  73.         \n\
  74.         $(LIBS2) +\n\
  75.         $(BLIBS2) \n)
  76.         
  77. install : $(TARGET)
  78.     $(BINDIR)\cp $(TARGET) $(BINDIR)
  79.  
  80. generics.h : $(CLASSES)
  81.     $(BINDIR)\dpp $(STRAT) -C -g -t -h -p @$(mktmp $(^:t"\n")\n)
  82.  
  83. generics.c : generics.h
  84.     $(BINDIR)\dpp $(STRAT) -C -g -c
  85.  
  86. generics.obj : generics.c
  87.     @echo $(GFLAGS) >bcc32.cfg
  88.     @echo $(INC) >>bcc32.cfg
  89.     $(CC) -c $<
  90.     @$(BINDIR)\rm -zq bcc32.cfg
  91.  
  92. generics.1 newgens: 
  93.     $(BINDIR)\rm -zq generics.*
  94.     $(BINDIR)\dpp $(STRAT) -C -g $(INCDIR)\generics.h -h -p @$(mktmp $(CLASSES:t"\n")\n)
  95.     @echo Done >generics.1
  96.  
  97. clean realclean:
  98.     $(BINDIR)\rm -zq *.obj *.o *.pdb *.err *.exe *.vcp
  99.     $(BINDIR)\rm -zq *.~ *.?~ *.??~ *.{* *.bak #*.*
  100.  
  101.  
  102.